// const BASE_URL = 'http://47.116.112.98'; // 替换为你的接口域名
const BASE_URL = 'http://192.168.10.87:8077'; // 替换为你的接口域名
// 创建请求工具函数
function request(url, method = 'GET', data = {}, showLoading = false) {
	const token = uni.getStorageSync('satoken'); // 可选：从本地存储获取 token
	const header = {                   //satoken--非浏览器环境
		'content-type': 'application/json',
		...(token ? {
			satoken: `${token}`
		} : {})
	};

	if (showLoading) {
		uni.showLoading({
			title: '加载中...',
			mask: true
		});
	}

	return new Promise((resolve, reject) => {
		uni.request({
			url: BASE_URL + url,
			method,
			data,
			header,
			success(res) {
				// 状态码 2xx 成功
				if (res.statusCode >= 200 && res.statusCode < 300) {
					if (!res.data.success) {
						uni.$u.toast(res.data.message)
					}
					resolve(res.data);
				} else {
					// 其他状态码统一处理
					uni.showToast({
						title: '请求异常',
						icon: 'none'
					});
					reject(res.errMsg || '请求失败');
				}
			},
			fail(err) {
				uni.showToast({
					title: '网络异常',
					icon: 'none'
				});
				reject(err);
			},
			complete() {
				if (showLoading) {
					uni.hideLoading();
				}
			}
		});
	});
}

// GET 请求快捷方法
function get(url, data, showLoading = false) {
	return request(url, 'GET', data, showLoading);
}

// POST 请求快捷方法
function post(url, data, showLoading = false) {
	return request(url, 'POST', data, showLoading);
}

export default {
	get,
	post,
	// put, delete 可自行扩展
};